package org.example.yunpicturebackend.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 *  @author Lenovo
 * @Target(ElementType.METHOD)  被它修饰的自定义注解，只能用来标注在【方法】上。
 *  @Retention(RetentionPolicy.RUNTIME)
 *  这个注解不仅在编译后的 .class 文件中存在，还会在程序运行时被 JVM 保留。因此，你可以在运行时通过反射机制读取到这个注解
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AuthCheck {
    /**
     * 必须有某个角色
     *
     * @return
     */
    String mustRole() default "";

}
